package com.ruoyi.system.domain;

import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 大修阶段对象 overhaul_stage
 * 
 * @author ruoyi
 * @date 2021-10-29
 */
public class OverhaulStage extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    private List<StageMonitoring> workStage;

    public List<StageMonitoring> getWorkStage() {
        return workStage;
    }

    public void setWorkStage(List<StageMonitoring> workStage) {
        this.workStage = workStage;
    }
    /** 主键自增 */
    private Long id;

    public String getStage_name() {
        return stage_name;
    }

    public void setStage_name(String stage_name) {
        this.stage_name = stage_name;
    }

    public String getStart_node() {
        return start_node;
    }

    public void setStart_node(String start_node) {
        this.start_node = start_node;
    }

    public String getEnd_node() {
        return end_node;
    }

    public void setEnd_node(String end_node) {
        this.end_node = end_node;
    }

    private String stage_name;
    private String start_node;
    private String end_node;
    /** 当前大修 */
    @Excel(name = "当前大修")
    private String currentOverhaul;

    /** 当前阶段 */
    @Excel(name = "当前阶段")
    private String currentStage;

    /** 计划开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "计划开始时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date planStartTime;

    /** 计划结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "计划结束时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date planEndTime;

    /** 实际开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "实际开始时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date actuialStartTime;

    /** 实际结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "实际结束时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date actuialEndTime;

    /** 计划工单数 */
    @Excel(name = "计划工单数")
    private String planStageNumber;

    /** 水位状态 */
    @Excel(name = "水位状态")
    private String waterLevelState;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setCurrentOverhaul(String currentOverhaul) 
    {
        this.currentOverhaul = currentOverhaul;
    }

    public String getCurrentOverhaul() 
    {
        return currentOverhaul;
    }
    public void setCurrentStage(String currentStage) 
    {
        this.currentStage = currentStage;
    }

    public String getCurrentStage() 
    {
        return currentStage;
    }
    public void setPlanStartTime(Date planStartTime) 
    {
        this.planStartTime = planStartTime;
    }

    public Date getPlanStartTime() 
    {
        return planStartTime;
    }
    public void setPlanEndTime(Date planEndTime) 
    {
        this.planEndTime = planEndTime;
    }

    public Date getPlanEndTime() 
    {
        return planEndTime;
    }
    public void setActuialStartTime(Date actuialStartTime) 
    {
        this.actuialStartTime = actuialStartTime;
    }

    public Date getActuialStartTime() 
    {
        return actuialStartTime;
    }
    public void setActuialEndTime(Date actuialEndTime) 
    {
        this.actuialEndTime = actuialEndTime;
    }

    public Date getActuialEndTime() 
    {
        return actuialEndTime;
    }
    public void setPlanStageNumber(String planStageNumber) 
    {
        this.planStageNumber = planStageNumber;
    }

    public String getPlanStageNumber() 
    {
        return planStageNumber;
    }
    public void setWaterLevelState(String waterLevelState) 
    {
        this.waterLevelState = waterLevelState;
    }

    public String getWaterLevelState() 
    {
        return waterLevelState;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("currentOverhaul", getCurrentOverhaul())
            .append("currentStage", getCurrentStage())
            .append("planStartTime", getPlanStartTime())
            .append("planEndTime", getPlanEndTime())
            .append("actuialStartTime", getActuialStartTime())
            .append("actuialEndTime", getActuialEndTime())
            .append("planStageNumber", getPlanStageNumber())
            .append("waterLevelState", getWaterLevelState())
            .toString();
    }
}
